/**
 * merge level=80
 * 
 * BottomRegion 的控制器
 */
Ext.define('Jfok.controller.BottomRegion', {
			extend : 'Ext.app.Controller',
			models : [],
			stores : [],
			views : ['region.BottomRegion'],

			init : function() {

				this.control({
							'bottomregion > button[action=email]' : {
								click : this.sendEmail
							},

							'bottomregion > button[action=qq]' : {
								click : function() {
									var obj = document.getElementById("__qq__");
									obj.target = "_blank";
									obj.href = 'http://wpa.qq.com/msgrd?V=1&Uin='
											+ Jfok.system.tf_serviceQQ
											+ '&Site=http://wpa.qq.com&Menu=yes';
									obj.click();
								}
							},

							'bottomregion menuitem#changepassword' : {
								click : this.changePassword
							},

							'bottomregion menuitem#myuserroles' : {
								click : this.myUserRoles
							},

							'bottomregion menuitem#myuserpopedom' : {
								click : this.myUserPopedom
							},

							// 我的登录日志
							'bottomregion menuitem#mylogininfo' : {
								click : function() {
									this.showModuleWithName('_SystemLoginLog');
								}
							},

							// 我的操作日志
							'bottomregion menuitem#myoperinfo' : {
								click : function() {
									this.showModuleWithName('_SystemOperateLog');
								}
							},

							'bottomregion button#showuserdw' : {
								click : function(button) {
									Jfok.modules.showModuleRecord('_Systemset', '1');
								}
							},

							'bottomregion button#showdepartment' : {
								click : function(button) {
									Jfok.modules.showModuleRecord('_Department',
											Jfok.system.tf_departmentId);
								}
							},

							'bottomregion menuitem#showuserinfo' : {
								click : function(button) {
									Jfok.modules.showModuleRecord('_User', Jfok.system.tf_userId);
								}
							}
						}),

				Ext.apply(Ext.form.field.VTypes, {
							password : function(val, field) {
								if (field.initialPassField) {
									var pwd = field.up('form').down('#' + field.initialPassField);
									return (val == pwd.getValue());
								}
								return true;
							},
							passwordText : '确认新密码与新密码不匹配!'
						})

			},

			// 我的所有权限，根据角色权限的叠加，显示
			myUserPopedom : function() {
				var win = Ext.create('Jfok.module.additionFunction.UserPopedom', {
							userId : Jfok.system.tf_userId,
							userName : Jfok.system.tf_userName
						});
				win.show();
			},

			myUserRoles : function() {
				var win = Ext.widget('window', {
							height : '50%',
							width : 350,
							layout : 'fit',
							modal : true,
							title : '角色设置『用户：' + Jfok.system.tf_userName + '』',
							items : [{
										xtype : 'treepanel',
										rootVisible : false,
										buttonAlign : 'center',
										buttons : [{
													text : '关闭',
													icon : 'images/button/return.png',
													scope : this,
													handler : function(button) {
														button.up('window').hide();
													}
												}],
										store : new Ext.data.TreeStore({
													autoLoad : true,
													proxy : {
														type : 'ajax',
														url : 'user/getuserroles.do',
														extraParams : {
															userId : Jfok.system.tf_userId
														}
													}
												})
									}]

						});
				win.down('treepanel').getView().onCheckChange = Ext.emptyFn;
				win.show();
			},

			changePassword : function() {
				var win = Ext.widget('window', {
							title : '修改密码',
							width : 300,
							modal : true,
							layout : 'fit',
							items : [{
								xtype : 'form',
								bodyPadding : '15 15 15',
								fieldDefaults : {
									labelAlign : 'right',
									labelWidth : 80,
									msgTarget : 'side',
									autoFitErrors : false
								},
								defaults : {
									inputType : 'password',
									maxLength : 10,
									enforceMaxLength : true,
									allowBlank : false
								},
								buttonAlign : 'center',
								buttons : [{
									text : '确定',
									formBind : true,
									icon : 'images/button/save.png',
									handler : function(button) {
										var form = button.up('form');
										if (form.isValid()) {
											Ext.Ajax.request({
														url : 'user/changepassword.do',
														params : {
															oldPassword : form.down('[name=oldpass]')
																	.getValue(),
															newPassword : form.down('[name=newpass]')
																	.getValue()
														},
														success : function(response) {
															if (response.responseText == 'true') {
																Jfok.system.smileInfo('密码修改已保存成功!');
																button.up('window').hide();
															} else {
																form.down('[name=oldpass]')
																		.markInvalid('原密码输入错误!')
																Jfok.system.warnInfo('原密码输入错误!');
															}
														},
														failure : function(response) {
															window.alert('修改密修保存失败!');
														}
													})
										}
									}
								}, {
									text : '关闭',
									icon : 'images/button/return.png',
									handler : function(button) {
										button.up('window').hide();
									}
								}],
								defaultType : 'textfield',
								items : [{
											fieldLabel : '原密码',
											name : 'oldpass'
										},

										{
											fieldLabel : '新密码',
											name : 'newpass',
											itemId : 'newpass'
										}, {
											fieldLabel : '确认新密码',
											initialPassField : 'newpass',
											vtype : 'password'
										}]

							}]
						});

				win.show();
				win.down('field').focus();
			},

			// 显示我的登录日志和操作日志
			showModuleWithName : function(moduleName) {
				var module = Jfok.modules.getModuleInfoWithName(moduleName);
				var pf = {
					moduleId : module.tf_moduleId,
					moduleName : moduleName,
					tableAsName : module.tableAsName,
					primarykey : 'tf_userName',
					fieldtitle : '用户',
					equalsValue : Jfok.system.tf_userName,
					equalsMethod : null,
					text : Jfok.system.tf_userName,
					isCodeLevel : false
				};
				Jfok.mainRegion.addFilterModule(moduleName, pf);
			},

			sendEmail : function() {
				var link = "mailto:" + Jfok.system.tf_serviceEmail + "?subject="
						+ Jfok.system.tf_userdwmc + Jfok.system.tf_userName + " 关于 "
						+ Jfok.system.tf_systemName + " 的咨询";
				window.location.href = link;
			}
		});